Smooth still image capture

ABSTRACT

A live video is directed to a display buffer of the device. The device is preferably a set top box and a live video frame stored in the display buffer is preferably displayed by a display device coupled to the set top box. The display device is preferably a television. A capture command preferably signals the set top box to store one or more frames of the currently displayed live video. Upon receiving the capture command, the live video is paused, thereby preventing the display buffer from loading subsequent live video frames. The live video is then re-directed to a capture buffer, the live video is un-paused, and a current live video frame is captured from the capture buffer. The captured frame is then stored using a conventional storage medium. After the frame is captured, the live video is re-directed from the capture buffer to the display buffer to resume display of the live video.

FIELD OF THE INVENTION

The present invention relates to the field of capturing a still image.More particularly, the present invention relates to the field ofsmoothly capturing a frame of a live video.

BACKGROUND OF THE INVENTION

When watching a television broadcast or other video program andsomething of interest is being shown, it is difficult for the viewer towrite down the information in the limited amount of time that it istypically displayed. For example, when watching a television broadcastand a telephone number or address is given out, unless the viewer has awriting utensil and paper readily available, it is difficult to get thepencil and paper and write down the information while it is still beingdisplayed. If a video recorder is not already set up to record when theinformation is displayed, it is also difficult to initiate recordingwhile the information is displayed, due to the mechanical latencyinherent in some conventional video recorders, such as a video cassetterecorder (VCR).

Other types of conventional video recorders store live video as digitalinformation, much as a personal computer stores information using a harddisk drive. Many such conventional video recorders include the abilityto capture an image currently displayed on a television without anymechanical latency. However, unless the video recorder includessufficient system resources, the process of capturing a displayed imagetypically causes a visual disturbance on the television while the imageis captured. Including the sufficient system resources necessary toovercome these visual disturbances increases the cost of the videorecorder.

SUMMARY OF THE INVENTION

Embodiments of the present invention include a process of smoothlycapturing a still image of a live video. A live video is directed to adisplay buffer of a device. The device is preferably a set top box and alive video frame stored in the display buffer is preferably displayed bya display device coupled to the set top box. The display device ispreferably a television. A capture command preferably signals the settop box to store one or more frames of the currently displayed livevideo. Upon receiving the capture command, the live video is paused,thereby preventing the display buffer from loading subsequent live videoframes. The live video is then re-directed to a capture buffer, the livevideo is un-paused, and a current live video frame is captured from thecapture buffer. The captured frame is then stored using a conventionalstorage medium. After the frame is captured, the live video isre-directed from the capture buffer to the display buffer to resumedisplay of the live video.

In one aspect of the present invention, a method of capturing a frame ofa live video includes directing the live video to a display buffer,wherein the display buffer stores a current live video frame referencedby a display pointer, pausing the live video upon receiving a screencapture command, thereby displaying a paused frame from the displaybuffer corresponding to the display pointer, directing the live video toa capture buffer, wherein the capture buffer captures a subsequent livevideo frame, thereby forming a captured frame, storing the capturedframe, and re-directing the live video to the display buffer. Pausingthe live video can prevent the display buffer from storing subsequentlyreceived live video. The method can also include enabling the capturebuffer prior to directing the live video to the capture buffer. Themethod can also include un-pausing the live video after directing thelive video to the capture buffer and prior to the capture buffercapturing the captured frame. The method can also include disabling thecapture buffer after re-directing the live video to the display buffer.When directing the live video to the capture buffer, the capture buffercan store a current live video frame referenced by a capture pointer.Disabling the capture buffer can set the capture pointer to the displaypointer. Enabling the capture buffer can set a capture pointer toreference the capture buffer. Directing the live video to the capturebuffer can include re-directing the live video from the display pointerto the capture pointer. The method can also include displaying the livevideo after re-directing the live video to the display buffer.

In another aspect of the present invention, a method of capturing aframe of a live video includes directing the live video to a displaybuffer, wherein a current storage position of the live video isreferenced by a capture pointer and a currently displayed frame from thedisplay buffer is referenced by a display pointer, pausing the livevideo upon receiving a screen capture command, setting the capturepointer to reference a capture buffer, capturing a current live videoframe from the capture buffer, and setting the capture pointer to matchthe display pointer. Pausing the live video can display a paused framefrom the display buffer corresponding to the display pointer. Settingthe capture pointer to reference the capture buffer can direct the livevideo to the capture buffer. Setting the capture pointer to match thedisplay pointer can re-direct the live video to the display buffer. Themethod can also include un-pausing the live video after directing thelive video to the capture buffer and prior to the capture buffercapturing the captured frame. Pausing the live video can prevent thedisplay buffer from storing subsequently received live video. Settingthe capture pointer to match the display pointer can release the capturebuffer. The method can also include displaying the live video afterre-directing the live video to the display buffer.

In yet another aspect of the present invention, a method of capturing aframe of a live video includes directing the live video to a displaybuffer, wherein a current storage position of the live video isreferenced by a capture pointer and a currently displayed frame from thedisplay buffer is referenced by a display pointer, pausing the livevideo upon receiving a screen capture command, thereby displaying apaused frame from the display buffer corresponding to the displaypointer, setting the capture pointer to reference a capture buffer,thereby directing the live video to the capture buffer, capturing acurrent live video frame from the capture buffer, and setting thecapture pointer to match the display pointer, thereby re-directing thelive video to the display buffer. The method can also include un-pausingthe live video after directing the live video to the capture buffer andprior to the capture buffer capturing the captured frame. Pausing thelive video can prevent the display buffer from storing subsequentlyreceived live video. Setting the capture pointer to match the displaypointer can release the capture buffer. The method can also includedisplaying the live video after re-directing the live video to thedisplay buffer.

In still yet another aspect of the present invention, an apparatus tocapture a frame of a live video includes an input/output (I/O) circuitto receive a screen capture command and the live video, a displaybuffer, a capture buffer, and a controller coupled to the I/O circuit,the display buffer and the capture buffer such that in operation thelive video is directed to the display buffer from the I/O interface,wherein a current storage position of the live video is referenced by acapture pointer and a currently displayed frame from the display bufferis referenced by a display pointer, and upon receiving the screencapture command the live video is paused, the capture pointer is set toreference the capture buffer, a current live video frame from thecapture buffer is captured, and the capture pointer is set to match thedisplay pointer. The apparatus can comprise a set top box. The I/Ointerface can provide an external connection to a display device todisplay the live video received from the display buffer. The live videocan be directed from the display buffer via the I/O interface to anexternal display device. The display buffer can maintain a paused framereferenced by the display pointer in response to pausing the live video.The live video can be directed to the capture buffer in response tosetting the capture pointer to match the display pointer. The live videocan be re-directed to the display buffer in response to setting thecapture pointer to match the display pointer. The live video can beun-paused after directing the live video to the capture buffer and priorto the capture buffer capturing the captured frame. The capture buffercan be released in response to setting the capture pointer to match thedisplay pointer.

In another aspect of the present invention, a set top box to capture aframe of a live video includes an input/output (I/O) circuit to receivea screen capture command and the live video, a display buffer, a capturebuffer, and a controller coupled to the I/O circuit, the display bufferand the capture buffer such that in operation the live video is directedto the display buffer from the I/O interface, wherein a current storageposition of the live video is referenced by a capture pointer and acurrently displayed frame from the display buffer is referenced by adisplay pointer, and upon receiving the screen capture command the livevideo is paused, the capture pointer is set to reference the capturebuffer, a current live video frame from the capture buffer is captured,and the capture pointer is set to match the display pointer. The I/Ointerface can provide an external connection to a display device todisplay the live video received from the display buffer. The live videocan be directed from the display buffer via the I/O interface to anexternal display device. The display buffer can maintain a paused framereferenced by the display pointer in response to pausing the live video.The live video can be directed to the capture buffer in response tosetting the capture pointer to match the display pointer. The live videocan be re-directed to the display buffer in response to setting thecapture pointer to match the display pointer. The live video can beun-paused after directing the live video to the capture buffer and priorto the capture buffer capturing the captured frame. The capture buffercan be released in response to setting the capture pointer to match thedisplay pointer.

In yet another aspect of the present invention, a network of devices tocapture a frame of a live video includes a source device, a displaydevice, and a set top box coupled to the source device and the displaydevice, the set top box comprising an input/output (I/O) circuit toreceive a screen capture command and the live video from the sourcedevice, a display buffer, a capture buffer, and a controller coupled tothe I/O circuit, the display buffer and the capture buffer such that inoperation the live video is directed to the display buffer from the I/Ointerface, wherein a current storage position of the live video isreferenced by a capture pointer and a currently displayed frame from thedisplay buffer is referenced by a display pointer and displayed on thedisplay device, and upon receiving the screen capture command the livevideo is paused, the capture pointer is set to reference the capturebuffer, a current live video frame from the capture buffer is captured,and the capture pointer is set to match the display pointer can bedirected from the display buffer via the I/O interface to an externaldisplay device. The display buffer can maintain a paused framereferenced by the display pointer in response to pausing the live video.The live video can be directed to the capture buffer in response tosetting the capture pointer to match the display pointer. The live videocan be re-directed to the display buffer in response to setting thecapture pointer to match the display pointer. The live video can beun-paused after directing the live video to the capture buffer and priorto the capture buffer capturing the captured frame. The capture buffercan be released in response to setting the capture pointer to match thedisplay pointer. The source device can comprise a cable serviceprovider, a satellite service provider, or a content source coupled tothe internet. The display device can be a television or a personalcomputer.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary network of devices.

FIG. 2 illustrates an exemplary set-top box according to the presentinvention.

FIG. 3 illustrates a state diagram showing a sample operation of thepresent invention

FIG. 4 illustrates a process of smoothly capturing a still image from alive video according to the preferred embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Embodiments of the present invention include a process of capturing astill image of a live video while maintaining a smooth display.Preferably, the process of the present invention is used by a devicewith limited processing power and/or limited memory. A live video isdirected to a display buffer of the device. The device is preferably aset top box and a live video frame stored in the display buffer ispreferably displayed by a display device coupled to the set top box. Thedisplay device is preferably a television. A user preferably uses aremote control device to send a capture command to the set top box. Thecapture command preferably signals the set top box to store one or moreframes of the currently displayed live video. Upon receiving the capturecommand, the live video is paused, thereby preventing the display bufferfrom loading subsequent live video frames. The live video is thenre-directed to a capture buffer, the live video is un-paused, and acurrent live video frame is captured from the capture buffer. Thecaptured frame is then stored using a conventional storage medium.Capturing the frame requires processing and related manipulation of theframe.

In conventional systems, it is this processing and manipulation thatcauses visual disturbance on the display while a frame is beingcaptured. Using the process of the present invention, such visualdisturbances are minimized, if not completely eliminated. After theframe is captured, the live video is re-directed from the capture bufferto the display buffer. Until this point, the display buffer maintainedthe same frame that had been previously loaded at the point where thelive video was paused, effectively pausing display of the live video onthe display device. Once the live video is re-directed to the displaybuffer, a current live video frame is loaded into the display buffer,thereby resuming display of the live video on the display device.

FIG. 1 illustrates an exemplary network of devices including a stereoreceiver 160, a DVD player 150, a video cassette recorder (VCR) 140, aset top box (STB) 10, a television 130, a computer 120, acable/satellite provider 170 and the Internet 180 connected together bynetwork connections 115, 125, 135, 145, 155, 165, 175, and 185. Thenetwork connection 155 couples the stereo receiver 160 to the DVD player150. The network connection 145 couples the DVD player 150 to the VCR140. The network connection 135 couples the VCR 140 to the television130. The network connection 125 couples the television 130 to the STB10. The network connection 115 couples the STB 10 to the PC 120. Thenetwork connection 165 couples the STB 10 to the cable/satelliteprovider 170. The network connection 175 couples the STB 10 to theInternet 180. The network connection 185 couples the PC 120 to theInternet 180.

The configuration illustrated in FIG. 1 is exemplary only. It should beapparent that an audio/video network could include many differentcombinations of components. It should also be apparent that networkconnections 115, 125, 135, 145 and 155 can be of any conventional type,including but not limited to ethernet, IEEE 1394-2000, or wireless.Network connections 165, 175 and 185 can be of any conventional typesufficient to provide a connection to a remote content source, includingbut not limited to the public switched telephone network, cable network,and satellite network.

FIG. 2 illustrates an exemplary set-top box according to the presentinvention. The set-top box preferably controls the transmission ofmultimedia from a local storage device, such as a personal computer(PC), to a television or from a remote content provider, such as a cabletelevision provider, to the television. The set-top box 10 includes aninput/output (I/O) interface 20, a secondary memory 30, a system memory40, a central processing unit (CPU) 50, a user interface 80, and adecoder 60 all coupled via a bi-directional bus 70. The I/O interface 20preferably couples the set-top box 10 to a content source (not shown)for receiving multimedia and to the television (not shown) or otherdisplay device for displaying the multimedia received from the contentsource. The I/O interface 20 can also be coupled to a conventionalnetwork, such as the Internet, to receive periodic software upgradesincluding new versions of operating software and new or upgradedapplications. The I/O interface 20 also sends and receives controlsignals to and from the user interface 80 and the television. The userinterface 80 preferably comprises a keypad and display, as is well knownin the art. Alternatively, the user interface 80 comprises anyconventional user interface.

The secondary memory 30 stores the software used to enable operation ofthe set-top box 10 along with a plurality of applications. Exemplaryapplications include, but are not limited to a menu of available contentsuch as an on-screen television guide, and display parameter settingssuch as color, tint, and brightness. Preferably, the secondary memory 30is flash memory. Alternatively, any conventional type of memory can beused. Preferably, the system memory 40 includes random access memory(RAM). The system memory 40 can also include additional buffers,registers, and cache according to specific design implementations. Inthe preferred embodiment of the present invention, the system memory 40includes a display buffer 42 and a capture buffer 44. Content to bedisplayed by the display device is retrieved from the display buffer 42.Portions of the content to be captured as stored images are directed tothe capture buffer 44, as will be explained in greater detail below.Multimedia received by the set-top box 10 is preferably encrypted toprevent unauthorized access and use, and the decoder 60 decrypts themultimedia according to access authorization provided by the CPU 50.

In operation, the set top box 10 receives a live video feed via the I/Ointerface 20. The live video is decoded by the decoder 60. As each frameis decoded by the decoder 60, the decoded frame is stored in systemmemory 40. The starting address for a most currently stored frame of thelive video is referenced by a capture pointer. In this manner, livevideo is directed to the capture pointer. In other words, the live videois directed to the current address referenced by the capture pointer. Ina standard operation mode, the capture pointer references the displaybuffer 42 within the system memory 40 such that as each frame isdecoded, it is loaded into the display buffer 42. Preferably, a singleframe is stored in the display buffer 42 at a given time. The framestored in the display buffer 42 is the frame currently displayed by thedisplay device coupled to the set top box 10. A starting address of thedisplay buffer 42 is referenced by a display pointer. In other words,the display pointer references a memory position which includes theframe currently displayed by the display device. In the standardoperation mode, the display pointer and the capture pointer referencethe same address. In an alternative embodiment, one or more frames arestored in the display buffer 42 at a given time, and the currentlydisplayed frame is referenced by the display pointer.

FIG. 3 illustrates a timing diagram for describing the operation of thepreferred embodiment of the present invention. For the sake ofsimplicity and clarity, common elements shown in FIGS. 1-3 also sharecommon reference numerals. For example, the display buffer 42 and thecapture buffer 44 are common in both FIGS. 2 and 3. In this timingdiagram, the display buffer 42 and the capture buffer 44 are describedin context with the overall functionality of the set top box 10. Asshown in FIG. 3, the timing diagram illustrates interaction between thedisplay buffer 42, the capture buffer 44, and a live video 100. The livevideo 100 is received by the set top box 10 for display on a displaydevice coupled to the set top box 10. A time line 120 indicates aprogression of time as measured in time increments. Preferably, eachtime increment measures a uniform period of time and each time incrementcorresponds to a single frame of live video as the live video progressesforward uninterrupted. Alternatively, each time increment is not auniform period of time and is meant to signify a change in state of thecapture buffer 44, the display buffer 42, the capture pointer, and thedisplay pointer. In the timing diagram of FIG. 3, the time line 120includes time increments time 0 through time 4.

Prior to time 0, the set top box 10 is operating in the standardoperation mode in which a live video 100 is directed to the capturepointer, which references the display buffer 42. Since the displaypointer also references the display buffer 42, the capture pointer andthe display pointer reference the same address while the set top box 10operates in the standard operation mode. At time 0, a signal is sent tothe set top box 10 to capture a frame of the live video 100. Preferably,the signal is sent by pressing a button on a remote control device. Uponthe set top box 10 receiving the signal, the live video 100 is paused.Pausing the live video 100 refers to pausing the storage of the livevideo 100 within the system memory 40. Pausing the live video does notrefer to pausing the actual live video feed to the set top box 10. Thelive video 10 continues to be sent to the set top box 10 whether or notthe live video 10 is paused within the set top box 10. As illustrated attime 0, the capture buffer 44 is shaded to indicate that no data isstored, and the current live video frame 100 is the same as thecurrently displayed frame stored in the display buffer 42.

At time 1, the capture pointer is changed to reference the capturebuffer 44. Since the capture pointer no longer references the displaybuffer 42, no subsequent live video frames are directed to and loadedinto the display buffer 42. As a result, the frame stored in the displaybuffer 42 at time 0 remains in the display buffer 42 at time 1. Thiseffectively pauses the display on the frame stored in the display buffer42 at time 0. The display pointer indicates what is displayed on thedisplay device and the capture pointer indicates where the live video100 is directed. At time 0, the live video 100 remains paused so that nosubsequent live video frames are stored in the system memory 40, whichincludes display buffer 42 and capture buffer 44. As a result, thecapture buffer 44 continues to remain empty at time 1, despite the livevideo 100 continuing forward, as indicated in FIG. 3 by the star in thelive video 100 moving diagonally down and to the left when referencingtime 1 to time 0.

At time 2, the live video 100 is un-paused. Since the capture pointer isnot directed to the display buffer 42, un-pausing the live video 100does not impact the display buffer 42 and the same frame that was storedin display buffer 42 at time 1 remains in the display buffer at time 2.However, the capture pointer is directed to the capture buffer 44 sothat once the live video 100 is un-paused, the capture buffer receivesthe current live video frame 100.

At time 3, the capture buffer 44 captures the current live video frame100 as captured image 110. The captured image 110 is the same frame asthe current live video frame 100 and a current frame stored in thecapture buffer 44, as illustrated by the position of the star in each ofthese frames at time 3. Capturing the frame sets off the captured imagefrom the capture buffer. The captured image 110 can be stored in anyconventional manner including a memory stick, a hard disk drive, flashmemory or RAM. The frame stored in display buffer 42 at time 2 remainsstored in display buffer 42 at time 3.

At time 4, the live video 100 is re-directed to the display buffer 42 bychanging the capture pointer to reference the display buffer 42.Re-directing the live video 100 to the display buffer 42 sets the settop box 10 back to the standard operation mode. As such, the capturepointer and the display pointer reference the same address, which is thedisplay buffer 42, and display of the live video 100 continues. Bychanging the capture pointer to reference the display buffer 42, thecapture buffer 44 is released. Preferably, when the capture buffer 44 isreleased, it is cleared of content, as indicated by the shading in FIG.3 at time 4. Alternatively, the capture buffer 44 is not cleared uponreleasing the capture buffer 44; instead, the content of the capturebuffer 44 is overwritten the next time memory associated with thecapture buffer 44 is used.

FIG. 4 illustrates a process of smoothly capturing a still image from alive video according to the preferred embodiment of the presentinvention. The live video is preferably received by a set top box. Theset top box preferably includes a display buffer and a capture buffer,as described in detail above. The live video is decoded within the settop box and provided to the display buffer for display on a displaydevice coupled to the set top box. At the step 210, the live video ispaused in response to receiving a capture command. Preferably, thecapture command is sent to the set top box by a remote control device.Although the live video continues to be sent to the set top box, pausingthe live video prevents further live video frames from being loaded intothe display buffer. As a result, display of the live video is paused onthe live video frame stored in the display buffer and the point wherethe live video is paused. At the step 220, the live video is re-directedto the capture buffer. At this point, the live video remains paused suchthat the capture buffer is prevented from loading a current live videoframe, although the live video continues to be sent to the set top box.At the step 230, the live video is un-paused such that the capturebuffer loads a current live video frame. Since the live video isdirected to the capture buffer and not the display buffer at this point,the frame stored in the display buffer at the step 210 continues to bestored in the display buffer despite un-pausing the live video at thestep 230. At the step 240, a current live video frame in the capturebuffer is captured. Capturing a frame includes setting off the framefrom the capture buffer so that the captured frame can be stored.Storing the captured frame can be accomplished using any conventionalstorage means, including but not limited to a hard disk drive within theset top box, an externally coupled hard disk drive, or a memory stick.At the step 250, the live video is re-directed to the display buffer sothat a current live video frame is displayed. Re-directing the livevideo to the display buffer releases the capture buffer, as the capturebuffer is no longer needed. The process illustrated in FIG. 4 ispreferably used by a device with limited system resources, such aslimited processing power and/or limited memory.

In operation, a live video is directed to a display buffer of a device.The device is preferably a set top box and a live video frame stored inthe display buffer is preferably displayed by a display device coupledto the set top box. The display device is preferably a television. Auser preferably uses a remote control device to send a capture commandto the set top box. The capture command preferably signals the set topbox to store a single frame of the currently displayed live video. Uponreceiving the capture command, the live video is paused, therebypreventing the display buffer from loading subsequent live video frames.As a result, the frame currently loaded in the display buffer remains inthe display buffer, effectively pausing the display on that frame. Afterpausing the live video, the live video is re-directed to a capturebuffer; however, since the live video is still paused, the capturebuffer is prevented from loading a current live video frame. The livevideo is then un-paused, enabling the capture buffer to load a currentlive video frame. The live video frame loaded in the capture buffer isthen captured by setting off the live video frame from the capturebuffer. The captured frame is then stored using any conventional storagemeans. The live video is then re-directed from the capture buffer to thedisplay buffer. Until this point, the display buffer maintained the sameframe that had been previously loaded at the point where the live videowas paused, effectively pausing display of the live video on the displaydevice. Once the live video is re-directed to the display buffer, acurrent live video frame is loaded into the display buffer, therebyresuming display of the live video on the display device.

The present invention has been described in terms of specificembodiments incorporating details to facilitate the understanding of theprinciples of construction and operation of the invention. Suchreferences, herein, to specific embodiments and details thereof are notintended to limit the scope of the claims appended hereto. It will beapparent to those skilled in the art that modifications can be made inthe embodiments chosen for illustration without departing from thespirit and scope of the invention. Specifically, it will be apparent toone of ordinary skill in the art that while the preferred embodiment ofthe present invention is used with set-top boxes, the present inventioncan also be implemented on any other appropriate system resource limiteddevice.

1. A method of capturing a frame of a live video, the method comprising:a. directing the live video to a display buffer, wherein the displaybuffer stores a current live video frame referenced by a displaypointer; b. pausing the live video upon receiving a screen capturecommand, thereby displaying a paused frame from the display buffercorresponding to the display pointer; c. directing the live video to acapture buffer, wherein the capture buffer captures a subsequent livevideo frame, thereby forming a captured frame; d. storing the capturedframe; and e. re-directing the live video to the display buffer.
 2. Themethod of claim 1 wherein pausing the live video prevents the displaybuffer from storing subsequently received live video.
 3. The method ofclaim 1 further comprising enabling the capture buffer prior todirecting the live video to the capture buffer.
 4. The method of claim 3further comprising un-pausing the live video after directing the livevideo to the capture buffer and prior to the capture buffer capturingthe captured frame.
 5. The method of claim 4 further comprisingdisabling the capture buffer after re-directing the live video to thedisplay buffer.
 6. The method of claim 5 wherein when directing the livevideo to the capture buffer, the capture buffer stores a current livevideo frame referenced by a capture pointer.
 7. The method of claim 6wherein disabling the capture buffer sets the capture pointer to thedisplay pointer.
 8. The method of claim 3 wherein enabling the capturebuffer sets a capture pointer to reference the capture buffer.
 9. Themethod of claim 8 wherein directing the live video to the capture bufferincludes re-directing the live video from the display pointer to thecapture pointer.
 10. The method of claim 1 further comprising displayingthe live video after re-directing the live video to the display buffer.11. A method of capturing a frame of a live video, the methodcomprising: a. directing the live video to a display buffer, wherein acurrent storage position of the live video is referenced by a capturepointer and a currently displayed frame from the display buffer isreferenced by a display pointer; b. pausing the live video uponreceiving a screen capture command; c. setting the capture pointer toreference a capture buffer; d. capturing a current live video frame fromthe capture buffer; and e. setting the capture pointer to match thedisplay pointer.
 12. The method of claim 11 wherein pausing the livevideo displays a paused frame from the display buffer corresponding tothe display pointer.
 13. The method of claim 11 wherein setting thecapture pointer to reference the capture buffer directs the live videoto the capture buffer.
 14. The method of claim 13 wherein setting thecapture pointer to match the display pointer re-directs the live videoto the display buffer.
 15. The method of claim 13 further comprisingun-pausing the live video after directing the live video to the capturebuffer and prior to the capture buffer capturing the captured frame. 16.The method of claim 11 wherein pausing the live video prevents thedisplay buffer from storing subsequently received live video.
 17. Themethod of claim 11 wherein setting the capture pointer to match thedisplay pointer releases the capture buffer.
 18. The method of claim 11further comprising displaying the live video after re-directing the livevideo to the display buffer.
 19. A method of capturing a frame of a livevideo, the method comprising: a. directing the live video to a displaybuffer, wherein a current storage position of the live video isreferenced by a capture pointer and a currently displayed frame from thedisplay buffer is referenced by a display pointer; b. pausing the livevideo upon receiving a screen capture command, thereby displaying apaused frame from the display buffer corresponding to the displaypointer; c. setting the capture pointer to reference a capture buffer,thereby directing the live video to the capture buffer; d. capturing acurrent live video frame from the capture buffer; and e. setting thecapture pointer to match the display pointer, thereby re-directing thelive video to the display buffer.
 20. The method of claim 19 furthercomprising un-pausing the live video after directing the live video tothe capture buffer and prior to the capture buffer capturing thecaptured frame.
 21. The method of claim 19 wherein pausing the livevideo prevents the display buffer from storing subsequently receivedlive video.
 22. The method of claim 19 wherein setting the capturepointer to match the display pointer releases the capture buffer. 23.The method of claim 19 further comprising displaying the live videoafter re-directing the live video to the display buffer. 24-32.(canceled)
 33. A set top box to capture a frame of a live video, theapparatus comprising: a. an input/output (I/O) circuit to receive ascreen capture command and the live video; b. a display buffer; c. acapture buffer; and d. a controller coupled to the I/O circuit, thedisplay buffer and the capture buffer such that in operation the livevideo is directed to the display buffer from the I/O interface, whereina current storage position of the live video is referenced by a capturepointer and a currently displayed frame from the display buffer isreferenced by a display pointer, and upon receiving the screen capturecommand the live video is paused, the capture pointer is set toreference the capture buffer, a current live video frame from thecapture buffer is captured, and the capture pointer is set to match thedisplay pointer.
 34. The set top box of claim 33 wherein the I/Ointerface provides an external connection to a display device to displaythe live video received from the display buffer.
 35. The set top box ofclaim 33 wherein the live video is directed from the display buffer viathe I/O interface to an external display device.
 36. The set top box ofclaim 33 wherein the display buffer maintains a paused frame referencedby the display pointer in response to pausing the live video.
 37. Theset top box of claim 33 wherein the live video is directed to thecapture buffer in response to setting the capture pointer to match thedisplay pointer.
 38. The set top box of claim 37 wherein the live videois re-directed to the display buffer in response to setting the capturepointer to match the display pointer.
 39. The set top box of claim 37wherein the live video is un-paused after directing the live video tothe capture buffer and prior to the capture buffer capturing thecaptured frame.
 40. The set top box of claim 33 wherein the capturebuffer is released in response to setting the capture pointer to matchthe display pointer.
 41. An apparatus for capturing a frame of a livevideo, the method comprising: a. means for directing the live video to adisplay buffer, wherein a current storage position of the live video isreferenced by a capture pointer and a currently displayed frame from thedisplay buffer is referenced by a display pointer; b. means for pausingthe live video upon receiving a screen capture command; c. means forsetting the capture pointer to reference a capture buffer; d. means forcapturing a current live video frame from the capture buffer; and e.means for setting the capture pointer to match the display pointer. 42.The apparatus of claim 41 further comprising means for interfacing witha display device to display the live video provided by the displaybuffer.
 43. The apparatus of claim 41 wherein the means for pausing thelive video displays a paused frame from the display buffer correspondingto the display pointer.
 44. The apparatus of claim 41 wherein the meansfor setting the capture pointer to reference the capture buffer directsthe live video to the capture buffer.
 45. The apparatus of claim 44wherein the means for setting the capture pointer to match the displaypointer re-directs the live video to the display buffer.
 46. Theapparatus of claim 44 further comprising means for un-pausing the livevideo after directing the live video to the capture buffer and prior tothe capture buffer capturing the captured frame.
 47. The apparatus ofclaim 41 wherein the means for pausing the live video prevents thedisplay buffer from storing subsequently received live video.
 48. Theapparatus of claim 41 wherein setting the capture pointer to match thedisplay pointer releases the capture buffer.
 49. A network of devices tocapture a frame of a live video, the network of devices comprising: a. asource device; b. a display device; and c. a set top box coupled to thesource device and the display device, the set top box comprising aninput/output (I/O) circuit to receive a screen capture command and thelive video from the source device, a display buffer, a capture buffer,and a controller coupled to the I/O circuit, the display buffer and thecapture buffer such that in operation the live video is directed to thedisplay buffer from the I/O interface, wherein a current storageposition of the live video is referenced by a capture pointer and acurrently displayed frame from the display buffer is referenced by adisplay pointer and displayed on the display device, and upon receivingthe screen capture command the live video is paused, the capture pointeris set to reference the capture buffer, a current live video frame fromthe capture buffer is captured, and the capture pointer is set to matchthe display pointer.
 50. The network of devices of claim 49 wherein thelive video is directed from the display buffer via the I/O interface toan external display device.
 51. The network of devices of claim 49wherein the display buffer maintains a paused frame referenced by thedisplay pointer in response to pausing the live video.
 52. The networkof devices of claim 49 wherein the live video is directed to the capturebuffer in response to setting the capture pointer to match the displaypointer.
 53. The network of devices of claim 52 wherein the live videois re-directed to the display buffer in response to setting the capturepointer to match the display pointer.
 54. The network of devices ofclaim 52 wherein the live video is un-paused after directing the livevideo to the capture buffer and prior to the capture buffer capturingthe captured frame.
 55. The network of devices of claim 49 wherein thecapture buffer is released in response to setting the capture pointer tomatch the display pointer.
 56. The network of devices of claim 49wherein the source device comprises a cable service provider, asatellite service provider, or a content source coupled to the internet.57. The network of devices of claim 49 wherein the display device is atelevision or a personal computer.